package cn.hairui.fastms.core.bean;

import cn.hairui.fastms.core.annotation.Dict;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * <p>
 * 用户信息表
 * </p>
 *
 * @author lihairui
 * @since 2020-11-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "SUser对象", description = "用户信息表")
public class SUser implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "编号")
    @TableId(value = "ID", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "登录帐号")
    @TableField("USER_ACCOUNT")
    private String userAccount;

    @ApiModelProperty(value = "用户姓名")
    @TableField("USER_NAME")
    private String userName;

    @ApiModelProperty(value = "昵称")
    @TableField("USER_NICKNAME")
    private String userNickname;

    @ApiModelProperty(value = "证件类型")
    @TableField("USER_ID_TYPE")
    @Dict(dictCode = "ZB_ID_TYPE")
    private String userIdType;

    @ApiModelProperty(value = "证件号码")
    @TableField("USER_ID_NO")
    private String userIdNo;

    @ApiModelProperty(value = "密码")
    @TableField("USER_PASSWORD")
    private String userPassword;

    @ApiModelProperty(value = "手机号码")
    @TableField("USER_TEL")
    private String userTel;

    @ApiModelProperty(value = "电子邮箱")
    @TableField("USER_EMAIL")
    private String userEmail;

    @ApiModelProperty(value = "所属机构")
    @TableField("USER_BCH")
    private String userBch;

    @ApiModelProperty(value = "用户状态")
    @TableField("USER_STS")
    @Dict(dictCode = "ZB_USER_STATUS")
    private String userSts;

    @ApiModelProperty(value = "密码修改日")
    @TableField("PASS_MODI_DT")
    private String passModiDt;

    @ApiModelProperty(value = "创建人")
    @TableField("CREATE_USER")
    private String createUser;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    private String createTime;

    @ApiModelProperty(value = "更新人")
    @TableField("UPDATE_USER")
    private String updateUser;

    @ApiModelProperty(value = "更新时间")
    @TableField("UPDATE_TIME")
    private String updateTime;

    @ApiModelProperty(value = "上次登录时间")
    @TableField("LAST_LOGIN_TIME")
    private String lastLoginTime;


}
